<template>
  <div v-show="dialogVisible">
      <el-dialog title="上传" >
      <el-upload
      class="upload-demo"
      ref="upload"
      action="doUpload"
      :limit="1"
      :file-list="fileList"
      :before-upload="beforeUpload">
      <el-button slot="trigger" size="small" type="primary">选取文件</el-button>
      <div slot="tip" class="el-upload__tip">只能上传xls/xlsx文件，且不超过500kb</div>
      
      </el-upload> 

      <div slot="footer" class="dialog-footer">
        <el-button @click="dialogVisible = false">取 消</el-button>
        <el-button type="primary" @click="dialogVisible = false">确 定</el-button>
      </div>
    </el-dialog> 
  </div>

</template>

<script>
export default {
  name: 'Upload',
  props: {
     fileList: [],
    dialogVisible: {
      type: Boolean,
      default: false
    }
  },
  methods: {

    beforeUpload(file){
      debugger
      console.log(file,'文件');
      this.files = file;
      const extension = file.name.split('.')[1] === 'xls'
      const extension2 = file.name.split('.')[1] === 'xlsx'
      const isLt2M = file.size / 1024 / 1024 < 5
      if (!extension && !extension2) {
      this.$message.warning('上传模板只能是 xls、xlsx格式!')
      return
      }
      if (!isLt2M) {
      this.$message.warning('上传模板大小不能超过 5MB!')
      return
      }
      this.fileName = file.name;
      return false // 返回false不会自动上传
    },

    submitUpload() {
  debugger
  console.log('上传'+this.files.name)
  if(this.fileName == ""){
   this.$message.warning('请选择要上传的文件！')
   return false
  }
  let fileFormData = new FormData();
  fileFormData.append('file', this.files, this.fileName);//filename是键，file是值，就是要传的文件，test.zip是要传的文件名
  let requestConfig = {
   headers: {
   'Content-Type': 'multipart/form-data'
   },
  }
  this.$http.post(`/basedata/oesmembers/upload?companyId=`+this.company, fileFormData, requestConfig).then((res) => {
   debugger
   if (data && data.code === 0) {
   this.$message({
    message: '操作成功',
    type: 'success',
    duration: 1500,
    onClose: () => {
    this.visible = false
    this.$emit('refreshDataList')
    }
   })
   } else {
   this.$message.error(data.msg)
   }
  }) 
  }

  }
}
</script>
